﻿using Newtonsoft.Json;
using System.Windows.Media.Media3D;
using X.WPF.Controls.Visual3Ds;

namespace X.WPF.Controls.Models
{
    /// <summary>
    /// 3D点信息
    /// </summary>
    public class Point3DInfo
    {
        #region # 构造器
        /// <summary>
        /// 创建标记信息构造器
        /// </summary>
        /// <param name="name">名称</param>
        /// <param name="location">位置</param>
        /// <param name="tag">附加信息</param>
        public Point3DInfo(string name, Point3D location, object tag = null)
        {
            this.Name = name;
            this.Location = location;
            this.Tag = tag;

            // 默认值
        }
        #endregion

        #region # 属性

        #region 名称 —— string Name
        /// <summary>
        /// 名称
        /// </summary>
        public string Name { get; set; }
        #endregion

        #region 3D位置 —— Point3D Location
        /// <summary>
        /// 3D位置
        /// </summary>
        public Point3D Location { get; set; }
        #endregion

        #region 3D建模 —— SphereVisual3D Visual3D
        /// <summary>
        /// 3D建模
        /// </summary>
        [JsonIgnore]
        public SphereVisual3D Visual3D { get; set; }
        #endregion

        #region 附加信息 —— object Tag
        /// <summary>
        /// 附加信息
        /// </summary>
        [JsonIgnore]
        public object Tag { get; set; }
        #endregion

        #endregion

        #region # 方法

        #endregion

    }
}